package com.guigu.tms.commons.work.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 * 运输任务表
 * </p>
 *
 * @author zwj
 * @since 2022-10-22
 */
@TableName("pd_task_transport")
public class TaskTransport implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    private String id;

    /**
     * 车次id
     */
    private String transportTripsId;

    /**
     * 起始机构id
     */
    private String startAgencyId;

    /**
     * 目的机构id
     */
    private String endAgencyId;

    /**
     * 任务状态，1为待执行（对应 未发车）、2为进行中（对应在途）、3为待确认（保留状态）、4为已完成（对应 已交付）、5为已取消
     */
    private Integer status;

    /**
     * 任务分配状态(1未分配2已分配3待人工分配)
     */
    private Integer assignedStatus;

    /**
     * 满载状态(1.半载2.满载3.空载)
     */
    private Integer loadingStatus;

    /**
     * 车辆id
     */
    private String truckId;

    /**
     * 提货凭证
     */
    private String cargoPickUpPicture;

    /**
     * 货物照片
     */
    private String cargoPicture;

    /**
     * 运回单凭证
     */
    private String transportCertificate;

    /**
     * 交付货物照片
     */
    private String deliverPicture;

    /**
     * 提货纬度值
     */
    private String deliveryLatitude;

    /**
     * 提货经度值
     */
    private String deliveryLongitude;

    /**
     * 交付纬度值
     */
    private String deliverLatitude;

    /**
     * 交付经度值
     */
    private String deliverLongitude;

    /**
     * 计划发车时间
     */
    private LocalDateTime planDepartureTime;

    /**
     * 实际发车时间
     */
    private LocalDateTime actualDepartureTime;

    /**
     * 计划到达时间
     */
    private LocalDateTime planArrivalTime;

    /**
     * 实际到达时间
     */
    private LocalDateTime actualArrivalTime;

    /**
     * 计划提货时间
     */
    private LocalDateTime planPickUpGoodsTime;

    /**
     * 实际提货时间
     */
    private LocalDateTime actualPickUpGoodsTime;

    /**
     * 计划交付时间
     */
    private LocalDateTime planDeliveryTime;

    /**
     * 实际交付时间
     */
    private LocalDateTime actualDeliveryTime;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    //运单编号集合
    List<String> transportOrderIds;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }
    public String getTransportTripsId() {
        return transportTripsId;
    }

    public void setTransportTripsId(String transportTripsId) {
        this.transportTripsId = transportTripsId;
    }
    public String getStartAgencyId() {
        return startAgencyId;
    }

    public void setStartAgencyId(String startAgencyId) {
        this.startAgencyId = startAgencyId;
    }
    public String getEndAgencyId() {
        return endAgencyId;
    }

    public void setEndAgencyId(String endAgencyId) {
        this.endAgencyId = endAgencyId;
    }
    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }
    public Integer getAssignedStatus() {
        return assignedStatus;
    }

    public void setAssignedStatus(Integer assignedStatus) {
        this.assignedStatus = assignedStatus;
    }
    public Integer getLoadingStatus() {
        return loadingStatus;
    }

    public void setLoadingStatus(Integer loadingStatus) {
        this.loadingStatus = loadingStatus;
    }
    public String getTruckId() {
        return truckId;
    }

    public void setTruckId(String truckId) {
        this.truckId = truckId;
    }
    public String getCargoPickUpPicture() {
        return cargoPickUpPicture;
    }

    public void setCargoPickUpPicture(String cargoPickUpPicture) {
        this.cargoPickUpPicture = cargoPickUpPicture;
    }
    public String getCargoPicture() {
        return cargoPicture;
    }

    public void setCargoPicture(String cargoPicture) {
        this.cargoPicture = cargoPicture;
    }
    public String getTransportCertificate() {
        return transportCertificate;
    }

    public void setTransportCertificate(String transportCertificate) {
        this.transportCertificate = transportCertificate;
    }
    public String getDeliverPicture() {
        return deliverPicture;
    }

    public void setDeliverPicture(String deliverPicture) {
        this.deliverPicture = deliverPicture;
    }
    public String getDeliveryLatitude() {
        return deliveryLatitude;
    }

    public void setDeliveryLatitude(String deliveryLatitude) {
        this.deliveryLatitude = deliveryLatitude;
    }
    public String getDeliveryLongitude() {
        return deliveryLongitude;
    }

    public void setDeliveryLongitude(String deliveryLongitude) {
        this.deliveryLongitude = deliveryLongitude;
    }
    public String getDeliverLatitude() {
        return deliverLatitude;
    }

    public void setDeliverLatitude(String deliverLatitude) {
        this.deliverLatitude = deliverLatitude;
    }
    public String getDeliverLongitude() {
        return deliverLongitude;
    }

    public void setDeliverLongitude(String deliverLongitude) {
        this.deliverLongitude = deliverLongitude;
    }
    public LocalDateTime getPlanDepartureTime() {
        return planDepartureTime;
    }

    public void setPlanDepartureTime(LocalDateTime planDepartureTime) {
        this.planDepartureTime = planDepartureTime;
    }
    public LocalDateTime getActualDepartureTime() {
        return actualDepartureTime;
    }

    public void setActualDepartureTime(LocalDateTime actualDepartureTime) {
        this.actualDepartureTime = actualDepartureTime;
    }
    public LocalDateTime getPlanArrivalTime() {
        return planArrivalTime;
    }

    public void setPlanArrivalTime(LocalDateTime planArrivalTime) {
        this.planArrivalTime = planArrivalTime;
    }
    public LocalDateTime getActualArrivalTime() {
        return actualArrivalTime;
    }

    public void setActualArrivalTime(LocalDateTime actualArrivalTime) {
        this.actualArrivalTime = actualArrivalTime;
    }
    public LocalDateTime getPlanPickUpGoodsTime() {
        return planPickUpGoodsTime;
    }

    public void setPlanPickUpGoodsTime(LocalDateTime planPickUpGoodsTime) {
        this.planPickUpGoodsTime = planPickUpGoodsTime;
    }
    public LocalDateTime getActualPickUpGoodsTime() {
        return actualPickUpGoodsTime;
    }

    public void setActualPickUpGoodsTime(LocalDateTime actualPickUpGoodsTime) {
        this.actualPickUpGoodsTime = actualPickUpGoodsTime;
    }
    public LocalDateTime getPlanDeliveryTime() {
        return planDeliveryTime;
    }

    public void setPlanDeliveryTime(LocalDateTime planDeliveryTime) {
        this.planDeliveryTime = planDeliveryTime;
    }
    public LocalDateTime getActualDeliveryTime() {
        return actualDeliveryTime;
    }

    public void setActualDeliveryTime(LocalDateTime actualDeliveryTime) {
        this.actualDeliveryTime = actualDeliveryTime;
    }

    public List<String> getTransportOrderIds() {
        return transportOrderIds;
    }

    public void setTransportOrderIds(List<String> transportOrderIds) {
        this.transportOrderIds = transportOrderIds;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    @Override
    public String toString() {
        return "TaskTransport{" +
            "id=" + id +
            ", transportTripsId=" + transportTripsId +
            ", startAgencyId=" + startAgencyId +
            ", endAgencyId=" + endAgencyId +
            ", status=" + status +
            ", assignedStatus=" + assignedStatus +
            ", loadingStatus=" + loadingStatus +
            ", truckId=" + truckId +
            ", cargoPickUpPicture=" + cargoPickUpPicture +
            ", cargoPicture=" + cargoPicture +
            ", transportCertificate=" + transportCertificate +
            ", deliverPicture=" + deliverPicture +
            ", deliveryLatitude=" + deliveryLatitude +
            ", deliveryLongitude=" + deliveryLongitude +
            ", deliverLatitude=" + deliverLatitude +
            ", deliverLongitude=" + deliverLongitude +
            ", planDepartureTime=" + planDepartureTime +
            ", actualDepartureTime=" + actualDepartureTime +
            ", planArrivalTime=" + planArrivalTime +
            ", actualArrivalTime=" + actualArrivalTime +
            ", planPickUpGoodsTime=" + planPickUpGoodsTime +
            ", actualPickUpGoodsTime=" + actualPickUpGoodsTime +
            ", planDeliveryTime=" + planDeliveryTime +
            ", actualDeliveryTime=" + actualDeliveryTime +
            ", createTime=" + createTime +
        "}";
    }
}
